import Vue from "vue";
import VueRouter from "vue-router";
Vue.use(VueRouter);

const routes = [
    { path: "/", redirect: "/login" },
    { path: "/login", component:()=>import("@/components/Login.vue") },
    {
        path: "/home",
        component: ()=>import("@/components/Home.vue"),
        redirect:'/welcome',
        children:[
            {path:'/welcome',component: ()=>import('@/components/Welcome')},
            {path:'/users',component:()=>import('@/components/user/user.vue')},
            {path:'/rights',component:()=>import('@/components/power/Rights')},
            { path:'/roles',component:()=>import('@/components/power/Roles.vue')},
            {path:'/categories',component:()=>import('@/components//goods/Cate.vue')},
            {path:'/params',component:()=>import('@/components/goods/Params')},
            {path:'/goods',component:()=>import('@/components/goods/List.vue')},
            {path:'/goods/add',component:()=>import('@/components/goods/Add.vue')},
            {path:'/orders',component:()=>import('@/components/order/Order.vue')},
            {path:'/reports',component:()=>import('@/components/report/Report.vue')}
        ]
    },
];

const router = new VueRouter({
    routes,
});
// 挂载路由守卫
router.beforeEach((to,form,next)=>{
    // to 将要访问的地址
    // form 代表从哪个路径跳转而来
    // next 是一个函数 next() 放行 next('/login') 强制跳转
    if(to.path=='/login') return next()
    // 获取token
    const tokenStr = window.sessionStorage.getItem('token')
    if(!tokenStr) return next('/login')
    next()

})

export default router;